Less Is Sometimes More in the Automation of Software Evolution Tasks By

نویسندگان

  • MOHSEN VAKILIAN
  • Vikram S. Adve
  • Brian P. Bailey
چکیده

Software rapidly evolves. A refactoring is a code change that preserves the behavior of the program. There has been much interest in automation to make refactoring more efficient and reliable. Although modern Integrated Development Environments (IDEs) provide many automated refactorings, studies suggest that programmers underuse automated refactorings. Based on our studies of programmers’ refactoring practices, we argue that usability problems are the common reasons of underusing automated refactorings. We introduce compositional refactoring, a new paradigm of automating refactorings. In this paradigm, the tool designer decomposes the large refactorings into a set of smaller, primitive changes and automates the primitive changes. Then, programmers compose the primitive changes to make larger changes. We have used the compositional paradigm to automate two classes of refactorings: the refactorings supported by modern IDEs and type qualifier inference. Type qualifiers augment a type system to check more properties of the software. Automated inference of type qualifiers can reduce the cost of using type qualifiers. The compositional paradigm enabled us to build the first universal type qualifier inference system. The system takes an existing type qualifier checker as an input and uses it to assist programmers in inserting type qualifiers. Our studies show that compositional refactoring is natural to programmers, gives programmers more control, and makes the automation more predictable and usable than the existing wizard-based and batch paradigms. The compositional paradigm achieves higher usability by automating less. Although this phenomenon may seem counterintuitive, it is not uncommon in automation design. The promising results of the compositional paradigm suggest that other software development automation technologies may also achieve a wider adoption by reducing the level of automation.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Evaluating The Usability of a Web Software and Determining its Correlation with Fatigue and Burnout Factor in Office Personnel of a Health Center in Tehran City

 Introduction: The importance of assessing and identifying ergonomic risk factors in the workplace among office workers has increased with the increase in occupational tasks of computer and increasing the risk of physical and mental disorders among its users. One of these factors is the usability of computer hardware and software. The purpose of this study was to evaluate the applicability of o...

متن کامل

Investigating the usability of an Integrated Research Automation System (SEAT): Heuristic Evaluation

Background and Objectives: Today, many hardware and software products, including office automation software, and web-based websites are used by employees, including professors and employees of different departments in offices. Websites are considered one of the main aspects of competition in any organization. This study aims to investigate the usability of the Integrated Research Automation Sys...

متن کامل

OPTIMAL DESIGN OF WATER DISTRIBUTION SYSTEM USING CENTRAL FORCE OPTIMIZATION AND DIFFERENTIAL EVOLUTION

For any agency dealing with the design of the water distribution network, an economic design will be an objective. In this research, Central Force Optimization (CFO) and Differential Evolution (DE) algorithm were used to optimize Ismail Abad water Distribution network. Optimization of the network has been evaluated by developing an optimization model based on CFO and DE algorithm in MATLAB and ...

متن کامل

Designing software to estimate the relative interference between multiple tasks and determine its validity

The most commonly used empirical approach to address issues of attention constraint is evaluate the degree of interference in dual or multiple tasks. The purpose of this study was designing software to estimate the relative interference between multiple tasks and determine its validity in performance prediction of simultaneous multiple tasks. in order to assess the validity of software, 46 stud...

متن کامل

The Assessment of Pragmatic Knowledge in the Online General IELTS-Practice Resources: A Corpus Analysis of Writing Tasks

Motivated by the concept of Communicative Language Ability and the eminence of the IELTS exam, this study intended to scrutinize the representation of functional knowledge (FK) and socio-linguistic knowledge (SK) as sub-components of pragmatic knowledge in the writing performances of both tasks of the online General IELTS-practice resources across three band scores. This quantitative inter-scor...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2014